﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
using System.Data;
using System.Windows.Forms;
using System.Drawing;

namespace MNNUTEM
{
    class crudPedido
    {

        private Conexion cn = new Conexion();
        String query;
        private mensaje msj;

        public void Insert(TextBox rut, string fecha, TextBox cantidad, TextBox direccion, string idProducto, string idSucursal, TextBox rutCliente)
        {
            try
            {
                query = "insert into Pedido (idPedido, fechaPedido,cantidadPedido,direccionPedido,Producto_idProducto,Producto_Sucursal_idSucursal, Cliente_rutCliente) values ('" + rut.Text + "','" + fecha + "','" + cantidad.Text + "','" + direccion.Text + "','" + idProducto + "','" + idSucursal + "','" + rutCliente.Text + "')";
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
                
                myCommand.ExecuteNonQuery();
                cn.conn().Close();
                msj = new mensaje("Usuario Ingresado con éxito.", 1300, Color.Green);

            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }



        }
        public void Delete(int ID)
        {

            try
            {
                query = "delete from Pedido where idPedido='" + ID + "'";
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
               
                myCommand.ExecuteNonQuery();
                cn.conn().Close();
                msj = new mensaje("Acción realizada con éxito.", 1300, Color.Green);

            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }


        }

        public void SetId(int ID, int idsuperior)
        {


            try
            {
                query = "UPDATE  Pedido set idPedido='" + ID + "' where idPedido='" + idsuperior + "'";
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
             
                myCommand.ExecuteNonQuery();
                cn.conn().Close();


            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }


        }


        public void Set(TextBox idPedido, string fecha, TextBox cantidad, TextBox direccion, TextBox idProducto, TextBox idSucursal, TextBox rutCliente, int ID)
        {


            try
            {
                query = "UPDATE  Pedido set idPedido='" + idPedido.Text + "' , fechaPedido='" + fecha + "', cantidadPedido='" + cantidad.Text + "', direccionPedido='" + direccion.Text + "', Producto_idProducto='" + int.Parse(idProducto.Text) + "', Producto_Sucursal_idSucursal='" + int.Parse(idSucursal.Text) + "', Cliente_rutCliente='" + int.Parse(rutCliente.Text) + "'  where idPedido='" + ID+ "'";
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
           
                myCommand.ExecuteNonQuery();
                cn.conn().Close();
                msj = new mensaje("Modificación realizada con éxito.", 1300, Color.Green);

            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }


        }


        public DataTable Consultation(string consultation)
        {

            try
            {


                query = consultation;
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
                MySqlDataAdapter sda = new MySqlDataAdapter();
                sda.SelectCommand = myCommand;
                DataTable dtable = new DataTable();
                sda.Fill(dtable);


                return dtable;

            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }

        }



        public DataSet Consultation2(string consultation)
        {

            try
            {


                query = consultation;
                MySqlCommand myCommand = new MySqlCommand(query, cn.conn());
                MySqlDataAdapter sda = new MySqlDataAdapter();
                sda.SelectCommand = myCommand;
                DataSet DS = new DataSet();
                sda.Fill(DS);


                return DS;

            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw new Exception("Se ha producido un error:", ex);
            }

        }


    }
}
